iT邦幫忙

2022 iThome 鐵人賽

DAY 18
0
Modern Web

【每天5分鐘】學前端系列 第 18

Day18【每天5分鐘】學前端 | JavaScript 陣列 array

  • 分享至 

  • xImage
  •  

陣列 Array [ ]

為有順序的資料集合,其中可以放入字串、數字、布林值等,或為一個空陣列。
陣列沒有固定的 長度型別 ,長度可以被改變。
索引值(index) 為從 0 開始的整數。

建立陣列

宣告一個變數為陣列,陣列中的資料需使用方括號 [ ] 包起來,
不同資料間使用 半形逗號(,) 做區隔。

舉例:

let a = []; // 宣告 a 為空陣列
let b = [1, 2, 3, 4, 5];
let c = ["Alice", "Ben", "Chris", "Debby"];
let d = [100, "楓葉", true]; // 陣列中也可以放入不同型別的資料

陣列操作的方法

操作方法 說明
push( ) 新增資料到陣列的末端
pop( ) 移除陣列的最後一個元素
shift( ) 移除陣列的第一個元素
unshift( ) 將元素添加到陣列第一個位置(index 為 0 的位置)

push( ) 、 unshift( ) 可以新增不只一個資料,用半形逗號(,)做區隔即可。


範例

動物教室開課啦,學員有(一號)綿羊、(二號)梅花鹿、(三號)水豚

let classAnimal = ["綿羊", "梅花鹿", "水豚"];
console.log(classAnimal); // (3)["綿羊", "梅花鹿", "水豚"]
展開前(滑鼠點擊向右的三角形 ▶ 即可展開)

https://ithelp.ithome.com.tw/upload/images/20220919/20151346FIBZ62WzaF.png

展開後

https://ithelp.ithome.com.tw/upload/images/20220919/20151346z0fcYtb8cl.png

老師要點名了,從一號開始唱名
一號綿羊(索引值為 0)、二號梅花鹿(索引值為 1)、三號水豚(索引值為 2)

console.log(classAnimal[0]); // 綿羊
console.log(classAnimal[1]); // 梅花鹿
console.log(classAnimal[2]); // 水豚
console.log(classAnimal[3]); // undefined

老師想數一下總共有幾個學員,使用 length

console.log(classAnimal.length); // 3

草泥馬轉學過來了,我們把牠放進陣列的最後面

classAnimal.push("草泥馬");

動物教室裡面現在有哪些學員?

console.log(classAnimal); // (4)["綿羊", "梅花鹿", "水豚", "草泥馬"]
console.log(classAnimal.length); // 4
console.log(classAnimal[3]); // 草泥馬

最後加入的四號草泥馬才剛來又轉走了,我們把牠移除

classAnimal.pop();

動物教室裡面現在有哪些學員?

console.log(classAnimal); // (3)["綿羊", "梅花鹿", "水豚"]
console.log(classAnimal.length); // 3
console.log(classAnimal[3]); // undefined

排在最前面的一號綿羊說牠也要轉學,我們把牠移除

classAnimal.shift();
console.log(classAnimal); // (2)["梅花鹿", "水豚"]
console.log(classAnimal.length); // 2

獅子來了,老師決定讓牠插隊排在第一個變成一號

classAnimal.unshift("獅子");
console.log(classAnimal); // (3)["獅子", "梅花鹿", "水豚"]
console.log(classAnimal.length); // 3

還有很多陣列操作的方法,附上 MDN 連結W3School 連結


https://ithelp.ithome.com.tw/upload/images/20220919/20151346OBFLBLk5hl.png 自學指引:

  • slice( )、splice( ) 的差異?
  • 清空陣列的方法?
  • 二維陣列


感謝閱讀,我們明天見囉~~~ /images/emoticon/emoticon29.gif


上一篇
Day17【每天5分鐘】學前端 | JavaScript 比較運算子
下一篇
Day19【每天5分鐘】學前端 | JavaScript 物件 object
系列文
【每天5分鐘】學前端30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
0
overcast3579
iT邦新手 5 級 ‧ 2022-09-19 22:27:56

熊熊同學也想轉學進來

Olivia iT邦新手 4 級 ‧ 2022-09-19 23:45:07 檢舉

請熊熊同學用陣列操作的方法進來 /images/emoticon/emoticon37.gif

0
json_liang
iT邦研究生 4 級 ‧ 2022-09-19 22:56:06

/images/emoticon/emoticon08.gif

Olivia iT邦新手 4 級 ‧ 2022-09-19 23:45:34 檢舉

/images/emoticon/emoticon34.gif

0
隱士者
iT邦新手 4 級 ‧ 2022-09-19 23:00:02

老師插隊不公平要管制序,另外我之前上六角課老師陣列蠻喜歡用Const

Olivia iT邦新手 4 級 ‧ 2022-09-19 23:55:24 檢舉

那用 reverse() 反轉一下 /images/emoticon/emoticon39.gif
記得官方有說能用 const 的時候,用 const 會比用 let 更好,然後不建議用 var ~~

我要留言

立即登入留言